package com.ruoyi.recipe.mapper;

import java.util.List;
import com.ruoyi.recipe.domain.RecipeArticleFavorite;

/**
 * 文章收藏Mapper接口
 * 
 * @author ruoyi
 * @date 2025-02-14
 */
public interface RecipeArticleFavoriteMapper 
{
    /**
     * 查询文章收藏
     * 
     * @param userId 文章收藏主键
     * @return 文章收藏
     */
    public RecipeArticleFavorite selectRecipeArticleFavoriteByUserId(Long userId);

    /**
     * 查询文章收藏列表
     * 
     * @param recipeArticleFavorite 文章收藏
     * @return 文章收藏集合
     */
    public List<RecipeArticleFavorite> selectRecipeArticleFavoriteList(RecipeArticleFavorite recipeArticleFavorite);

    /**
     * 新增文章收藏
     * 
     * @param recipeArticleFavorite 文章收藏
     * @return 结果
     */
    public int insertRecipeArticleFavorite(RecipeArticleFavorite recipeArticleFavorite);

    /**
     * 删除文章收藏
     * 
     * @param userId 文章收藏主键
     * @return 结果
     */
    public int deleteRecipeArticleFavoriteByUserId(Long userId);

    /**
     * 批量删除文章收藏
     * 
     * @param userIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteRecipeArticleFavoriteByUserIds(String[] userIds);

    /**
     * 通过openId批量删除文章收藏
     *
     * @param openId 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteRecipeArticleFavoriteByOpenId(String openId);

    /**
     * 通过openId批量删除文章收藏
     *
     * @param openIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteRecipeArticleFavoriteByOpenIds(String openIds);

    /**
     * 通过文章id批量删除文章收藏
     *
     * @param articleId 文章id
     * @return 结果
     * */
    public int deleteRecipeArticleFavoriteByArticleId(Long articleId);

    /**
     * 通过文章id批量删除文章收藏
     *
     * @param articleIds 文章id数组
     * @return 结果
     * */
    public int deleteRecipeArticleFavoriteByArticleIds(String[] articleIds);

    /**
     * 删除文章收藏
     *
     * @param recipeArticleFavorite 文章收藏
     * @return 结果
     */
    public int deleteRecipeArticleFavorite(RecipeArticleFavorite recipeArticleFavorite);
}
